Not applicable
Not applicable
Not applicable
1. Field of the Invention
This invention generally relates to computer networks. In particular, the invention relates to directing network traffic.
2. Description of the Prior Art
The Internet is an international network of interconnected government, education and business computer networks. A person at a computer terminal or personal computer with the proper software communicates through the Internet by placing data in an Internet Protocol (IP) packet or datagram. The packet contains, in part, a source address associated with the computer terminal and a destination address associated with the destination of the packet on the Internet. Using Transmission Control Protocol (TCP), transport of the packet is managed.
The packet is transported in the source network (the user""s network), the destination network, and any intervening networks using communication software on processors or routers. The routers read the destination address of the packet and forward the packets towards their destinations using various algorithms known in the art.
Intranets are typically corporate networks that may use the same networking or transport protocols as the Internet. Thus, both the Internet and Intranets can be IP networks.
On a typical IP network, a dedicated server or application processor provides access to information in a cohesive fashion. For example, documents are stored in a HyperText Markup Language (HTML), and users of the IP network use Web Browser software to obtain access to the documents. Other standards and protocols may be used for the same and other types of information. A user with Web Browser software enters a domain name associated with a desired application, such as web page content. The domain name is converted to an IP destination address and the user""s request is then routed through the IP network or a plurality of IP networks to a server or application processor associated with the desired application. Access is thus gained to the application. The user may then request further information, such as an HTML document or further processing associated with the application. For example, using HyperText Transport Protocol (HTTP), HTML documents are communicated to the user.
The application desired by the user may reside on more than one server where each server is at a location remote from the other server. For example, company A maintains content information on a server on the east coast of the United States and the same content information on a server on the west coast of the United States. Various mechanisms have been developed to direct user""s request to one of the two possible servers, some based on the IP traffic or user request load.
The load associated with a plurality of user requests for the same information is balanced and directed using the Domain Name System (DNS). Upon entry of a domain name by a user, the Web Browser software obtains a destination address from a Domain Name server. Based on the location of the user relative to the possible desired servers and/or the number of instances within a particular amount of time one desired server address versus the other has been provided, the Domain Name server provides one of the possible desired servers"" address as the destination address, such as the application server on the east coast. Typically, the Web Browser software caches the destination address after the first look-up and all subsequent interactions with that desired server bypass the DNS. Thus, DNS operates generally at Open Systems Interconnection (OSI) layer 7 (the applications layer). Due to the cached IP address, if the server becomes unavailable, the user experiences an outage until a new destination address look-up is forced.
Other OSI layer 7 load balancing solutions include HTTP redirect. These solutions are typically specific to HTTP and cannot load balance all IP traffic. Additionally, Browser bookmarks used for HTTP refer to a particular destination address, not the Uniform Resource Location (URL) (DNS address server), so reconnections through bookmarks attempt to return directly to a particular destination. If the destination is unavailable, the user experiences an outage.
Some known systems provide geographical load balancing and direction at OSI layers 2 and 3 (the datalink and network layers). Thus, IP traffic is balanced and directed with network components, not Web Browser software. For example, Remote Dispatch by Resonate routes IP traffic associated with a particular application and a particular company or customer to one point. A processor at that point then geographically distributes the IP traffic by changing the destination address to one of several geographically remote servers applying the same application for that customer or company. However, as the amount of IP traffic coming into the single point increases, the response time of all of the application servers appears to decrease.
Another OSI layer 2 and 3 load balancing and direction system is Hopscotch by Genuity. Work stations, not in the IP traffic path, are attached to routers. Using agents or software placed on various application servers, information unique to that agent is provided to a central database. The work stations access the database to obtain load data and use the connections with the routers to geographically distribute based on the load data. However, if the central database fails, the system does not properly distribute IP traffic. If one of several servers in the same location becomes unavailable, the system routes IP traffic to other geographical locations and not to the operational servers at the original location. Furthermore, the application servers must be programmed to allow operation of the agent.
These and other problems are associated with the various load balancing and address assigning systems and methods described above. The present invention attempts to solve these problems.
The present invention is directed to a network and method of providing near 100% availability of services. According to one feature of the invention, redirectors are implemented to direct network traffic to any of two or more application processors providing the same service. The redirectors re-route traffic to other application processors when one processor is unavailable and load balance between available processors. According to a second feature, the redirectors collect various network management statistics from the processors to determine the most responsive processor for receiving traffic. According to a third feature, redirectors are provided in data paths at network access points and at data centers with the application processors. Traffic is directed at various locations in the network. According to a fourth feature, the various network management statistics are shared among the redirectors for efficient load balancing.
In a particular first aspect of the invention, a system and method for sharing data between at least first and second redirection processors is provided. At least the first redirection processor is associated with an application server. The first redirection processor collects server statistics from the application server. The first redirection processor sends information responsive to the server statistics to the second redirection processor.
In a second aspect of the invention, a system and method for directing Internet Protocol (IP) requests between at least first and second application servers is provided. The first and second servers apply substantially the same application. A redirector collects first server statistics from the first application server and second server statistics from the second application server. The first and second server statistics include Simple Network Management Protocol (SNMP) Management Information Base (MIB) information. The redirector directs at least one IP request to one of the first and second application servers in response to the first and second server statistics.
In a third aspect of the invention, a network and method for providing network processing associated with a plurality of users is provided. At least first and second processors at a substantially same geographic location apply substantially the same application and operate at substantially the same time. A load processor operatively connects to the first and second processors. The load processor distributes requests from any one of the plurality of users received by the network to one of the first and second processors in response to load balancing information.
In a fourth aspect of the invention, a network and method for redirecting network traffic is provided. A plurality of address processors are placed in a plurality of network traffic paths. A plurality of application servers operatively connect to the plurality of network traffic paths. The application servers apply, in part, substantially the same application. The address processors direct network traffic to particular applications servers in response to load information.